package main

const (
	pageURL       = "https://gs.amac.org.cn/amac-infodisc/api/pof/manager/query"
	totalCountURL = "https://gs.amac.org.cn/amac-infodisc/api/pof/manager/query/totalcount"
	detailURL     = "https://gs.amac.org.cn/amac-infodisc/res/pof/manager/"
)

type AMACIntro struct {
	Content          []Content       `json:"content" map:"content"`
	First            bool            `json:"first" map:"first"`
	Last             bool            `json:"last" map:"last"`
	Number           int             `json:"number" map:"number"`
	NumberOfElements int             `json:"numberOfElements" map:"numberOfElements"`
	Size             int             `json:"size" map:"size"`
	Sort             []AMACIntroSort `json:"sort" map:"sort"`
	TotalElements    int             `json:"totalElements" map:"totalElements"`
	TotalPages       int             `json:"totalPages" map:"totalPages"`
}

type Content struct {
	ArtificialPersonName string `json:"artificialPersonName" map:"artificialPersonName"`
	EstablishDate        int64  `json:"establishDate" map:"establishDate"`
	FundCount            int    `json:"fundCount" map:"fundCount"`
	FundTypeScaleMap     string `json:"fundTypeScaleMap" map:"fundTypeScaleMap"`
	HasCreditTips        bool   `json:"hasCreditTips" map:"hasCreditTips"`
	HasSpecialTips       bool   `json:"hasSpecialTips" map:"hasSpecialTips"`
	AMACId               string `json:"id" map:"id" gorm:""`
	ManagerHasProduct    bool   `json:"managerHasProduct" map:"managerHasProduct"`
	ManagerName          string `json:"managerName" map:"managerName" `
	MemberType           string `json:"memberType" map:"memberType" `
	OfficeAddress        string `json:"officeAddress" map:"officeAddress"`
	OfficeAdrAgg         string `json:"officeAdrAgg" map:"officeAdrAgg"`
	OfficeCity           string `json:"officeCity" map:"officeCity"`
	OfficeCoordinate     string `json:"officeCoordinate" map:"officeCoordinate"`
	OfficeProvince       string `json:"officeProvince" map:"officeProvince"`
	OrgForm              string `json:"orgForm" map:"orgForm"`
	PaidInCapital        int    `json:"paidInCapital" map:"paidInCapital"`
	PrimaryInvestType    string `json:"primaryInvestType" map:"primaryInvestType"`
	RegAdrAgg            string `json:"regAdrAgg" map:"regAdrAgg"`
	RegCoordinate        string `json:"regCoordinate" map:"regCoordinate"`
	RegisterAddress      string `json:"registerAddress" map:"registerAddress"`
	RegisterCity         string `json:"registerCity" map:"registerCity" `
	RegisterDate         int64  `json:"registerDate" map:"registerDate"`
	RegisterNo           string `json:"registerNo" map:"registerNo"`
	RegisterProvince     string `json:"registerProvince" map:"registerProvince"`
	SubscribedCapital    int    `json:"subscribedCapital" map:"subscribedCapital"`
	URL                  string `json:"url" map:"url"`
}

type AMACIntroSort struct {
	Ascending    bool   `json:"ascending"`
	Descending   bool   `json:"descending"`
	Direction    string `json:"direction"`
	IgnoreCase   bool   `json:"ignoreCase"`
	NullHandling string `json:"nullHandling"`
}
